<template>
  <div class="container" @click="handleGallaryClick">
    <div class="wrapper">
      <swiper :options="swiperOptions">
        <swiper-slide
          v-for="(item, index) in imgs"
          :key="index"
        >
          <img class="gallary-img" :src="item"/>
        </swiper-slide>
        <div class="swiper-pagination" slot="pagination"></div>
      </swiper>
    </div>
  </div>
</template>

<script>
  export default {
    name: "gallary",
    data() {
      return {
        swiperOptions: {
          pagination: '.swiper-pagination',//配置分页
          paginationType: 'fraction',
          observeParents: true,//使用v-show的时候，切换时swiper的宽受影响出不来，所以要使用observer
          observer: true
        }
      }
    },
    props: {
      imgs: {//默认值为空数组
        type: Array,
        default() {
          return []
        }
      }
    },
    methods: {
      handleGallaryClick() {
        this.$emit('close')
      }
    }
  }
</script>

<style lang="stylus" scoped>
  /*想使paging向下移动，但是swiper-container的overflow是hidden，所以使用穿刺使得它的overflow为默认值*/
  .container >>> .swiper-container
    overflow: inherit

  .container
    display: flex
    flex-direction: column
    justify-content: center
    z-index: 1
    position: fixed
    left: 0
    right: 0
    top: 0
    bottom: 0
    background: #000
    .wrapper
      height: 0
      width: 100%
      padding-bottom: 100%
      .gallary-img
        width: 100%
      .swiper-pagination
        color: #fff
        bottom: -1rem
</style>
